home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 11 / Cream of the Crop 11-2.iso / os2 / gnucal.zip / gcal-us.info-3 (.txt) < prev    next >
GNU Info File  |  1995-12-20  |  45KB  |  925 lines

  1. This is Info file ./gcal-us.info, produced by Makeinfo-1.63 from the
  2. input file ./doc/tex/gcal-us.texi.
  3.   This file documents Gcal, a program for printing calendars.  It
  4. displays a calendar for a month or for a year, eternal holiday lists
  5. and fixed date warning lists; in many ways.  Gcal correctly omits the
  6. dates that were skipped when the current Gregorian calendar replaced
  7. the earlier Julian calendar.
  8.   Copyright (C) 1994, 1995 Thomas Esken
  9.   This is the first edition of the Gcal documentation.
  10.   Permission is granted to make and distribute verbatim copies of this
  11. manual provided the copyright notice and this permission notice are
  12. preserved on all copies.
  13.   Permission is granted to copy and distribute modified versions of this
  14. manual under the conditions for verbatim copying, provided that the
  15. entire resulting derived work is distributed under the terms of a
  16. permission notice identical to this one.
  17.   Permission is granted to copy and distribute translations of this
  18. manual into another language, under the above conditions for modified
  19. versions, except that this permission notice may be stated in a
  20. translation approved by the Foundation.
  21.   Any suggestions, improvements, extensions, bug reports, donations,
  22. proposals for contract work, and so forth are welcome!  Please send
  23. them directly to my Email address.  If you like my work, I'd appreciate
  24. a postcard from you!
  25.                                 \\\_''/'
  26. -------------------------oOO    (/o-o\)    OOo-------------------------
  27. Thomas Esken                o  (.  "  .)  o   Internet :
  28. Im Hagenfeld 84              \___) ~ (___/      <esken@uni-muenster.de>
  29. D-48147 M"unster; GERMANY                     Phone : (+49) 0251 232585
  30. File: gcal-us.info,  Node: Fixed date warnings,  Next: Todays calendar,  Prev: Eternal holidays,  Up: Top
  31. Fixed date warnings
  32. *******************
  33.   This chapter describes how to use the *fixed date warning* feature of
  34. Gcal.  For that purpose, you may create a Gcal resource file for
  35. showing fixed dates/appointments (*note Resource file::.).
  36.   Each time you execute Gcal in simple single month mode, i.e. no
  37. explicit month, year or fiscal year is given in the command line, but
  38. the *fixed date warning* argument, e.g.:
  39.      gcal --list-of-fixed-dates
  40.      gcal -c
  41. it checks the resource file for dates and processes those that refer to
  42. the actual (==todays) date.  Then Gcal displays all fixed date warnings
  43. found in the resource file, that refer to the actual day
  44. (week/month/year) of the actual year without a leading calendar.
  45. Some more examples:
  46.      gcal -ce
  47.      gcal -cw-
  48.      gcal -c-m
  49.      gcal -c-y-
  50.      gcal -jcb -c-et
  51.      gcal -cey-
  52.      gcal -jc -cey
  53. The fixed date warnings can be displayed in different ways:
  54.   In case you start Gcal with the *fixed date warning* argument and/or
  55. a month and/or an explicit year or fiscal year; respectively with the
  56. special 3-Month mode command, e.g.:
  57.      gcal -c july
  58.      gcal -ce 7 1994
  59.      gcal -c-y 7/1994
  60.      gcal -c 7:1993
  61.      gcal -c 1993
  62.      gcal -c .
  63.      gcal -c .+
  64. Gcal displays a (three) month / year calendar of the specified
  65. respectively actual month / year and trailing those fixed date warnings
  66. found in the resource file, that refer to the given period; the warning
  67. level is same as `-cy' option if the warning period refers to a year or
  68. fiscal year or to a three month period respectively is same as `-cm'
  69. option if the warning period refers to a month.
  70.   In case you start Gcal without an explicit date and the *fixed date
  71. warning* argument *in connection with* the *eternal holiday list*
  72. argument, e.g.:
  73.      gcal -c -n
  74.      gcal -Cm -n
  75.      gcal -Cl1224 -n
  76.      gcal -cl3+ -n
  77. then Gcal displays all fixed date warnings found in the resource file,
  78. that refer to the requested period and trailing all holidays of the
  79. eternal holiday list that refer to the whole actual year without a
  80. leading calendar.  For more details how to use an *eternal holiday
  81. list*, see *Note Eternal holidays::.
  82. *Annotation to previous examples:*
  83.   In case an additional *standard/special calendar format* argument
  84. (*note `--type=special|standard': Calendar options.) or an additional
  85. *starting day of week* argument (*note `--starting-day[=ARG]': Calendar
  86. options.) (except the `-s 0' option respectively the `--starting-day=0'
  87. option) is found in the command line, e.g.:
  88.      gcal -c -n -i
  89.      gcal -c -i-
  90.      gcal -n -i- :
  91.      gcal -n -s Sunday
  92. Gcal displays a leading month, year or fiscal year calendar before all
  93. other lists.
  94.   Each time you execute Gcal in simple single year mode, i.e. no
  95. explicit month, year or fiscal year is given in the command line, but
  96. the *fixed date warning* argument (with optional modifiers) and the
  97. *number of blocks* argument (*note `--blocks=ARG': Calendar options.),
  98. e.g.:
  99.      gcal -c --blocks=3
  100.      gcal -C-em -b 3
  101.      gcal -c-t -b 6 -jc
  102. it checks the resource file for dates and processes those that refer to
  103. the actual (==todays) date!  Gcal displays a leading year calendar and
  104. all fixed date warnings, found in the resource file, that refer to the
  105. actual day (week/month/year) of the actual year.
  106.   You can list fixed date warnings of past, present or future
  107. month/years, too.  This can be done on the one hand, if you use the
  108. `%DATE' option in the fashion you require (*note Actual date
  109. modifier::.), and on the other hand, if a command respectively a *list*
  110. or *range* of commands is used.
  111. For example:
  112. `gcal -c 1993'
  113.      List all date entries related to entire 1993 and all eternal date
  114.      entries related to entire 1993 in ascending order; the warning
  115.      level is same as `-cy' option.
  116. `gcal -c- july:1993'
  117.      List all date entries related to fiscal year - starting in July
  118.      1993 and ending in June 1994 - and all eternal date entries
  119.      related to fiscal year - starting in July 1993 and ending in June
  120.      1994 - in descending order; the warning level is same as `-cy'
  121.      option.
  122. `gcal -ce july 1993'
  123.      List all date entries related to July 1993 and all eternal date
  124.      entries related to July 1993 and all eternal holiday entries
  125.      related to July 1993 in ascending order; the warning level is same
  126.      as `-cm' option.
  127. `gcal -c-e 1993'
  128.      List all date entries related to entire 1993 and all eternal date
  129.      entries related to entire 1993 and all eternal holiday entries
  130.      related to entire 1993 in descending order; the warning level is
  131.      same as `-cy' option.
  132. * Menu:
  133. * Resource file::           How to use a Resource file.
  134. * Resource file examples::  Examples of Resource file entries.
  135. File: gcal-us.info,  Node: Resource file,  Next: Resource file examples,  Prev: Fixed date warnings,  Up: Fixed date warnings
  136. Resource file
  137. =============
  138.   This sections describes how to use a "resource file", which contains
  139. fixed dates and appointments.  The name of the standard resource file is
  140. `./.gcalrc' (1).
  141. Gcal uses a special file searching mechanism:
  142.   1. The Gcal program expects the standard resource file in the actual
  143.      directory and looks in this directory first.
  144.   2. If the above action fails, Gcal inspects that directory, which is
  145.      referenced in the environment variable `HOME'.  If no `HOME'
  146.      environment variable is defined and set, Gcal omits this step.
  147.      *Note HOME: Environment variables.
  148.   3. If the above action fails, Gcal scans the directories, which are
  149.      referenced in the environment variable `GCALPATH' (2) (*note
  150.      GCALPATH: Environment variables.), for the standard resource file.
  151.      The `GCALPATH' environment variable contains a (`:')
  152.      colon-separated list of directories.  If no such environment
  153.      variable is defined and set, Gcal omits this step.
  154.   4. If the above action fails, Gcal inspects the *user library*
  155.      directory (normally `$HOME/lib/gcal-lib') for detecting the
  156.      standard resource file.  This directory is a directory relative to
  157.      the `HOME' directory.  If an environment variable
  158.      `GCAL_USR_LIBDIR' is set, Gcal appends the contents of this
  159.      environment variable to the contents of the `HOME' environment
  160.      variable and tries to use that directory first instead of using
  161.      the burned-in default name of that directory (*note
  162.      GCAL_USR_LIBDIR: Environment variables.).  If no `HOME'
  163.      environment variable is defined and set, Gcal omits this step.
  164.   5. If all above actions fail, Gcal inspects the *system library*
  165.      directory (normally `/usr/lib/gcal-lib' or
  166.      `$(prefix)/lib/gcal-lib') for detecting the standard resource
  167.      file.  This directory is a directory absolute the
  168.      *root*/*$(prefix)* directory.  If an environment variable
  169.      `GCAL_SYS_LIBDIR' is set, Gcal tries to use that directory first
  170.      instead of using the burned-in default name of that directory
  171.      (*note GCAL_SYS_LIBDIR: Environment variables.).
  172.   If the standard resource file is not found during steps 1...5 of the
  173. file searching mechanism, no fixed date warnings will be created!
  174.   If a `-f|F NAME[+...]' respectively `--resource-file=ARG' command
  175. line argument is given, a file NAME will be used for the resource file
  176. instead of the standard resource file.  *Note `--resource-file=ARG':
  177. Date warning options.
  178.   An "path name" contains one ore more `/' (slash) characters and
  179. denotes a file, which fixed access path either starts from the root
  180. directory, like `/foo/bar/file', or from the actual directory, like
  181. `./bar/file' or `../bar/file'.  If NAME is a pathname:
  182.      In case file NAME is found, Gcal will use it.
  183.      In case file NAME is not found, Gcal will not use it.
  184.   A "simple" file name does not contain a `/' (slash) character, this
  185. means no fixed access path, like `file'.  If NAME is a simple file name:
  186.      Gcal tries to find this file NAME using the previously explained
  187.      file searching mechanism.
  188. * Menu:
  189. * Structure of resource file::  How to write a Resource file.
  190. * Date part of a line::         How to write the Date part.
  191. * Text part of a line::         How to write the Text part.
  192. * Comment line::                What is a Comment line?
  193. * Include statements::          What are Include statements.
  194. * Special macro texts::         What is a Special macro text.
  195. * Date variables::              How Date variables can be used.
  196.   ---------- Footnotes ----------
  197.   (1)  On OS/2, MS-DOS and some other systems, the name of the
  198. *standard* resource file is `./gcalrc'.
  199.   (2)  The environment variable `PATH' is used on `MSDOS' for this, and
  200. the environment variable `DPATH' is used on `OS/2' for this.
  201. File: gcal-us.info,  Node: Structure of resource file,  Next: Date part of a line,  Prev: Resource file,  Up: Resource file
  202. Structure of resource file
  203. --------------------------
  204.   A Gcal resource file is a plain ASCII text file. This text file may be
  205. created by any text editor or by redirecting the *standard output
  206. channel* to a file, e.g.:
  207.      % echo '19930217 Text' >> resource-file
  208.   A special but simple line structure is required so Gcal is able to
  209. interpret its contents.  Each fixed date warning entry in a resource
  210. file must be splitted into two parts, namely a *date part* and a *text
  211. part*, which *must* be separated by *one* "whitespace" character (Tab,
  212. Space, Form-Feed ...) minimum (except of *local date variable*
  213. assignments/operations), e.g.:
  214.      date part *whitespace* text part
  215. or more concrete, e.g.:
  216.      YYYY[MM[DD|WWW[N]]]*whitespace*TEXT
  217. or much more concrete, e.g.:
  218.      19940217 I'm the text!
  219. File: gcal-us.info,  Node: Date part of a line,  Next: Text part of a line,  Prev: Structure of resource file,  Up: Resource file
  220. Date part of a line
  221. -------------------
  222.   The structure of a "date part" - which gives Gcal the information at
  223. what date a fixed date happens - of a line in the resource file is
  224. *Either*: `YYYY[MM[DD|WWW[N]]]'
  225.     `YYYY'
  226.           (4 digits), is the year including the century (range
  227.           0000...9999).  Leading zeroes are required in case given year
  228.           is less than 1000 and other components of the date part are
  229.           trailing the year.
  230.     `MM'
  231.           (2 digits or 3 characters), is the month (range 00...12 or
  232.           99, respectively Jan, Feb...).  A given 99 for the month
  233.           means the last month of the year (== December).  Leading
  234.           zeroes are required in case given month is less than 10 and
  235.           other components of the date part are trailing the month.
  236.     `DD'
  237.           (2 digits), is the day (range 00...31 or 99).  A given 99 for
  238.           the day means the last day of the month.  Leading zeroes are
  239.           required in case given day is less than 10 and other
  240.           components of the date part are trailing the day.
  241.     `WWW'
  242.           (2...3 characters), is a short weekday name (range Mon...Sun).
  243.     `N'
  244.           (1 digit), is the N'th weekday WWW of month (range 1...5 or
  245.           9).
  246.              * N == 1...5
  247.                N'th weekday WWW of month.
  248.              * N == 9
  249.                Last weekday WWW of month.
  250. *Or*: `YYYY*d|wN[WWW]'
  251.     `YYYY'
  252.           (4 digits), is the year including the century (range
  253.           0000...9999).  Leading zeroes are required in case given year
  254.           is less than 1000 and other components of the date part are
  255.           trailing the year.
  256.     `*d'
  257.           (2 characters), is the reference to an ordinary date.
  258.     `*w'
  259.           (2 characters), is the reference to a date of an
  260.           ISO-8601:1988 week.
  261.     `N'
  262.           (1...3 digits), is the value in days or in weeks, the fixed
  263.           date occurs.  If the computed date doesn't occur in year,
  264.           i.e. is off the year bounds, the fixed date warning message
  265.           is suppressed.
  266.     `WWW'
  267.           (2...3 characters), is a short weekday name (range Mon...Sun).
  268. *Or*: `YYYY@e|DVAR[[+|-]N]'
  269.     `YYYY'
  270.           (4 digits), is the year including the century (range
  271.           0000...9999).  Leading zeroes are required in case given year
  272.           is less than 1000 and other components of the date part are
  273.           trailing the year.
  274.     `@e'
  275.           (2 characters), is the reference to Easter Sunday's date.
  276.     `@DVAR'
  277.           (2 characters), is the reference to a date variable.
  278.     `[+|-]N'
  279.           (1...4 alphanumeric characters), is the optional displacement
  280.           value in days, the fixed date occurs relative to Easter
  281.           Sunday's date or date variables date.  If the computed date
  282.           doesn't occur in year, i.e. is off the year bounds, the fixed
  283.           date warning message is suppressed.
  284. *Or*: `YYYY@e|DVAR[+|-]NWWW'
  285.     `YYYY'
  286.           (4 digits), is the year including the century (range
  287.           0000...9999).  Leading zeroes are required in case given year
  288.           is less than 1000 and other components of the date part are
  289.           trailing the year.
  290.     `@e'
  291.           (2 characters), is the reference to Easter Sunday's date.
  292.     `@DVAR'
  293.           (2 characters), is the reference to a date variable.
  294.     `[+|-]NWWW'
  295.           (3...7 alphanumeric characters), is the optional displacement
  296.           value in weekdays, the fixed date occurs relative to Easter
  297.           Sunday's date or date variables date.  If the computed date
  298.           doesn't occur in year, i.e. is off the year bounds, the fixed
  299.           date warning message is suppressed.
  300. *Or*: Any of these date variable assignments respectively operations...
  301.      DVAR=MMDD
  302.      DVAR=MMWWWN
  303.      DVAR=*dN[WWW]
  304.      DVAR=*wN[WWW]
  305.      DVAR=DVAR
  306.      DVAR++
  307.      DVAR--
  308.      DVAR+=N
  309.      DVAR-=N
  310. *Please note:*
  311.    * If YYYY is specified as 0000:
  312.      The month and day are assumed to be annual events and the *text
  313.      part* will be displayed for any year.
  314.    * If MM is not given or specified as 00:
  315.      The day is assumed to be a monthly event for the specified year
  316.      and the *text part* will be displayed for any month.
  317.    * If DD is not given or specified as 00:
  318.      Each day is assumed to be a daily event for the specified year and
  319.      month and the *text part* will be displayed for any day.
  320.    * If WWW is specified as a short (2...3 characters) weekday name,
  321.      e.g. `Mon, Tue...':
  322.      The given weekday name is assumed to be a weekly event for the
  323.      specified year and month and the *text part* will be displayed for
  324.      any week.
  325. File: gcal-us.info,  Node: Text part of a line,  Next: Comment line,  Prev: Date part of a line,  Up: Resource file
  326. Text part of a line
  327. -------------------
  328.   The "text part" of a line in a resource file can be any text you like.
  329. The length of the text is unlimited, but the whole text of a fixed date
  330. warning (date part, highlighting sequences and text part) is always
  331. truncated to `MAXLEN' characters (actually 1024).
  332.   Furthermore, you can split the text of a *long* resource file line.
  333. Each time a `~' (tilde) character is found in the text part, this
  334. character is replaced by a real `\n' (newline) character.
  335.   You may quote the `~' (tilde) character - in case this character
  336. itself is needed - by placing a `\' (backslash) character before it,
  337. e.g. `\~'.
  338.   If you need the characters `\~' itself, you have to quote the `\'
  339. (backslash) character by itself, e.g. `\\~'.
  340.   A line of the resource file is continued on the next line if a `\-\n'
  341. backslash-newline character sequence is found, e.g.:
  342. the line:
  343.      000000Mo Every Monday
  344. and the line:
  345.      000000Mo \
  346.      Every \
  347.      Monday
  348. are identical.
  349. File: gcal-us.info,  Node: Comment line,  Next: Include statements,  Prev: Text part of a line,  Up: Resource file
  350. Comment line
  351. ------------
  352.   A line beginning with a `;' (semicolon) character in the resource file
  353. is treated as a remark and will not be used by Gcal!  Any *whitespace*
  354. characters may lead the remark character.
  355. File: gcal-us.info,  Node: Include statements,  Next: Special macro texts,  Prev: Comment line,  Up: Resource file
  356. Include statements
  357. ------------------
  358.   You may add "#include" statements in a resource file (a mechanism
  359. similar the method, which is used by the C Preprocessor) for searching
  360. and loading further resource files, e.g.:
  361.   1. #include "foo/bar"
  362.   2. #include <bar>
  363.   The first *#include* statement stimulates Gcal to load the file `bar'
  364. from the directory `foo' using steps 1...5 of the previously explained
  365. mechanism, which is used for searching files (*note File searching
  366. mechanism: Resource file.).
  367.   The second *#include* statement stimulates Gcal to load the file `bar'
  368. from the user respectively system library directory using steps 4...5 of
  369. the previously explained mechanism, which is used for searching files.
  370.      *Please note:*
  371.      Included files may not include other files, i.e. recursive or
  372.      sub-includes are not permitted!
  373. File: gcal-us.info,  Node: Special macro texts,  Next: Date variables,  Prev: Include statements,  Up: Resource file
  374. Special macro texts
  375. -------------------
  376.   The text part of a resource file line may contain nine special macro
  377. texts that may occur mixed and multiple.  These macro texts start with
  378. a `%' (percent) character, which may be quoted by a leading `\'
  379. (backslash) character if the `%' (percent) character itself is wanted
  380. to be used in the text part, e.g. `\%'.
  381.      *Please note:*
  382.      The optional date after the `%b...', `%y...', `%s...' and `%e...'
  383.      macro texts may be denoted either using the date format
  384.      `YYYY[MM[DD|WWW[N]]]', `YYYY*d|wN[WWW]' or
  385.      `YYYY@e|DVAR[[+|-]N[WWW]]' date format.
  386. * Menu:
  387. * %s macro text::  How to use the Start of event macro text.
  388. * %e macro text::  How to use the End of event macro text.
  389. * %b macro text::  How to use the Birthday macro text.
  390. * %y macro text::  How to use the Year number macro text.
  391. * %m macro text::  How to use the Month number macro text.
  392. * %w macro text::  How to use the Week number macro text.
  393. * %d macro text::  How to use the Day number macro text.
  394. * %n macro text::  How to use the Textual date macro text.
  395. * %t macro text::  How to use the Actual time macro text.
  396. File: gcal-us.info,  Node: %s macro text,  Next: %e macro text,  Prev: Special macro texts,  Up: Special macro texts
  397. %s macro text
  398. .............
  399.   `%s[YYYY[MM[DD|WWW[N]]]]' references the "starting date" of the fixed
  400. date, i.e. the first date the fixed date may occur.  If the date, which
  401. is encoded in the `%s...' macro text, is greater the current
  402. respectively queried date, so the complete warning text will be
  403. suppressed.  If the warning text must be shown, the text of this macro
  404. is always suppressed in output.  This macro text *must* have a trailing
  405. *whitespace* character.
  406.    * If YYYY... is not given (==*no* date encoded), the 01 January of
  407.      current year is assumed for the date.
  408.    * If YYYY is set to 0000, the current year is assumed for the year.
  409.    * If MM is not given, then 01 (==January) is assumed for the month.
  410.    * If MM is set to 00, the current month is assumed for the month.
  411.    * If DD|WWW is not given, then 01 is assumed for the day.
  412.    * If DD is set to 00, the current day is assumed for the day.
  413.    * If the N field is given (range 1...5 or 9), a WWW field must be
  414.      given then.
  415. File: gcal-us.info,  Node: %e macro text,  Next: %b macro text,  Prev: %s macro text,  Up: Special macro texts
  416. %e macro text
  417. .............
  418.   `%e[YYYY[MM[DD|WWW[N]]]]' references the "ending date" of the fixed
  419. date, i.e. the last date the fixed date may occur.  If the date, which
  420. is encoded in the `%e...' macro text, is less the current respectively
  421. queried date, so the complete warning text will be suppressed.  If the
  422. warning text must be shown, the text of this macro is always suppressed
  423. in output.  This macro text *must* have a trailing *whitespace*
  424. character.
  425.    * If YYYY... is not given (==*no* date encoded), the 31 December of
  426.      current year is assumed for the date.
  427.    * If YYYY is set to 0000, the current year is assumed for the year.
  428.    * If MM is not given, then 12 (==December) is assumed for the month.
  429.    * If MM is set to 00, the current month is assumed for the month.
  430.    * If DD|WWW is not given, then the last day of month MM is assumed
  431.      for the day.
  432.    * If DD is set to 00, the current day is assumed for the day.
  433.    * If the N field is given (range 1...5 or 9), a WWW field must be
  434.      given then.
  435. File: gcal-us.info,  Node: %b macro text,  Next: %y macro text,  Prev: %e macro text,  Up: Special macro texts
  436. %b macro text
  437. .............
  438.   `%b[YYYY[MM[DD|WWW[N]]]]' references a "year of birth" and is
  439. converted to an *age value*, e.g.:
  440.      The text `My %b1962 birthday%s1952 %e2062' will be expanded to
  441.      ==> `My 32'nd birthday', in case the current year is 1994.
  442.   Those age values are evaluated/respeced only, if the computation of an
  443. age value is greater zero.  The fixed date warning in preceding example
  444. is displayed only in case the current year is greater than 1952 and less
  445. than 2062.  If the warning text must be shown, the text of this macro
  446. is always suppressed in output.  This macro text *must* have a trailing
  447. *whitespace* character.
  448.    * If YYYY... ist not given (==*no* date encoded), the current date
  449.      is assumed for the date.
  450.    * If YYYY is set to 0000, the current year is assumed for the year.
  451.    * If MM is not given or set to 00, the current month is assumed for
  452.      the month.
  453.    * If DD is not given or set to 00, the current day is assumed for
  454.      the day.
  455.    * If the N field is given (range 1...5 or 9), a WWW field must be
  456.      given then.
  457. File: gcal-us.info,  Node: %y macro text,  Next: %m macro text,  Prev: %b macro text,  Up: Special macro texts
  458. %y macro text
  459. .............
  460.   `%y[YYYY[MM[DD|WWW[N]]]]' references any year and is converted to a
  461. "year difference value", e.g.:
  462.      The text `Sylvester 1912 is %y1912 years ago' will be expanded to
  463.      ==> `Sylvester 1912 is -82 years ago', in case the current year is
  464.      1994.
  465.   If the warning text must be shown, the text of this macro is always
  466. suppressed in output.  This macro text *must* have a trailing
  467. *whitespace* character.
  468.    * If YYYY... is not given (==*no* date encoded), the current date is
  469.      assumed for the date.
  470.    * If YYYY is set to 0000, the current year is assumed for the year.
  471.    * If MM is not given or set to 00, the current month is assumed for
  472.      the month.
  473.    * If DD is not given or set to 00, the current day is assumed for
  474.      the day.
  475.    * If the N field is given (range 1...5 or 9), a WWW field must be
  476.      given then.
  477. File: gcal-us.info,  Node: %m macro text,  Next: %w macro text,  Prev: %y macro text,  Up: Special macro texts
  478. %m macro text
  479. .............
  480.   `%m' references the current respectively queried "month number"
  481. relative to the actual (==todays) date.
  482. File: gcal-us.info,  Node: %w macro text,  Next: %d macro text,  Prev: %m macro text,  Up: Special macro texts
  483. %w macro text
  484. .............
  485.   `%w' references the current respectively queried "week number"
  486. relative to the actual (==todays) date.
  487. File: gcal-us.info,  Node: %d macro text,  Next: %n macro text,  Prev: %w macro text,  Up: Special macro texts
  488. %d macro text
  489. .............
  490.   `%d' references the current respectively queried "day number"
  491. relative to the actual (==todays) date, e.g.:
  492.      A resource file line like `0 %d days gone' will be expanded to
  493.      ==> `-10 days gone', in case you call Gcal with the `-c10-' option
  494.      and no command.
  495. File: gcal-us.info,  Node: %n macro text,  Next: %t macro text,  Prev: %d macro text,  Up: Special macro texts
  496. %n macro text
  497. .............
  498.   `%n[[+|-]N]' references the current respectively queried "day number"
  499. relative to the current date plus/minus N days and is converted to an
  500. effective "date text", e.g.:
  501.      A resource file line like `1962Sep21 10000 days old: %n+10000'
  502.      will be expanded to
  503.      ==> `10000 days old: Feb-06-1990', in case you call Gcal with the
  504.      simple `-c' option and the command `sep 1962' (*note `MM YYYY':
  505.      Single commands.).
  506. File: gcal-us.info,  Node: %t macro text,  Prev: %n macro text,  Up: Special macro texts
  507. %t macro text
  508. .............
  509.   `%t[12|24]' references the "actual system time", e.g.:
  510.      The text `Time: %t --> Dentist at 10:00' will be expanded to
  511.      ==> `Time: 07:32 --> Dentist at 10:00', in case the actual system
  512.      time value is 07:32 (hh:mm).
  513.   A system time value is always displayed in a highlighted manner and in
  514. *24-hour* format by default.  For displaying in the *12-hour* format,
  515. add `12' behind `%t', e.g. `%t12'.
  516. File: gcal-us.info,  Node: Date variables,  Prev: Special macro texts,  Up: Resource file
  517. Date variables
  518. --------------
  519.   Gcal respects *global* and/or *local* date variables (*note
  520. `--date-variable=ARG': Date warning options.).  This means up to *25*
  521. user defined date variables can be set and referenced during program
  522. execution.  The name of a date variable DVAR is a single alphabetic
  523. character (except the `e' character, which is internally reserved for
  524. Easter Sunday's date and unassignable/unoperatable) followed by the
  525. assignment operator character `=' and the numerical values of month and
  526. day MMDD this variable has to store or the reference to another date
  527. variable, e.g.:
  528.      a=1127
  529.      b=054
  530.      c=a
  531.   Only local date variables can store dynamic dates given in the
  532. `MMWWWN' or `*d|wN[WWW]' format, e.g.:
  533.      a=03su2
  534.      b=JunMon9
  535.      x=*d10
  536.      y=*d10fri
  537.      z=*w3Su
  538. which means, date variable A stores the date of second Sunday in March
  539. and B stores date of last Monday in June.  The date variable X stores
  540. the date of the 10'th absolute day of the year (== 10'th January).  Y
  541. stores the date of the 10'th Friday of the year, and the assignment to
  542. Z is the date of the Sunday, which occurs in the 3'rd week of the year.
  543. *Caution:*
  544. These kinds of assignments to date variables are *only* computed
  545. correctly in simple year bounds, which means during current year, not
  546. in fixed dates shown after the current year has changed, e.g. in
  547. `fiscal years'.
  548.   Date variables which are defined in a resource file are always local
  549. and and only respected in this specific file and that file, which is
  550. included by it.  This means for the included file that *all* local
  551. variables of the caller are visible.  The included file itself may
  552. define its own local variables in its own name-space, which are not
  553. exported to caller on return.  All other definitions of date variables
  554. (in command line, environment variable or response file) are always
  555. global.  If a resource file line contains a reference of a date
  556. variable, which is not locally defined in that file, Gcal will try to
  557. use the global values held by this variable.  If this fails because no
  558. global definition of this date variable is given, Gcal will not process
  559. this line.  If the simple `--debug' respectively `--debug=internal'
  560. option is given, warning messages for each undefined date variable will
  561. be shown (*note `--debug=internal': Global options.).  If the
  562. `--debug=abort' option is given, Gcal will abort program execution when
  563. first undefined global date variable reference occurs.  For more
  564. information, see *Note `--debug=abort': Global options.
  565.   Only advanced users should apply the `--hidden' option, which affects
  566. that the actual incarnation of a local date variable - which was
  567. previously defined in a resource file and not in an included file - is
  568. being exported to further resource files instead of using its global
  569. value in case that date variable isn't locally defined in that further
  570. resource file.
  571.   *Note Include statements::.
  572.   But be aware, the use of this option could produce unwanted results,
  573. because the order of processing the resource files is an important
  574. entity in managing the `--hidden' option, so it's not recommended using
  575. it.  You, the user, must know exactly what you're doing when applying
  576. this option; *you are expressively warned now!*
  577. Some basic operations can be performed on date variables.
  578. These are:
  579. `DVAR++'
  580.      Simple incrementation by one day.
  581. `DVAR--'
  582.      Simple decrementation by one day.
  583. `DVAR+=N'
  584.      Addition of a constant numeric day factor N.
  585. `DVAR-=N'
  586.      Subtraction of a constant numeric day factor N.
  587.   The scope of the operations which are done on a local date variable,
  588. is that resource or include file, where the local date variable is
  589. defined.
  590.   If operations on a global date variable are performed in a resource
  591. file or that file which is included by it, these operations are only
  592. valid in that specific file (they are done locally), not in further
  593. resource files processed.  This means the initial values of global date
  594. variables are always restored if the resource file changes.
  595.   Please note that each date variable assignment/operation must be
  596. given on a single line in the resource file.
  597. File: gcal-us.info,  Node: Resource file examples,  Prev: Resource file,  Up: Fixed date warnings
  598. Resource file examples
  599. ======================
  600.   Here are some examples how a resource file can look like:
  601.      ; This is an example of a resource file
  602.      ;
  603.      19940715 Time: %t --> Dentist at 10:00
  604.      00000921 My %b1962 birthday%s1952 %e2062
  605.      0000093 Gregorian~reformation\~is %y1752 year ago
  606.      0000Sep03 Gregorian~reformation\~is %y1752 year ago
  607.      0 Every day in every month in every year
  608.      0000 Every day in every month in every year
  609.      00000000 Every day in every month in every year
  610.      199400fri        Every Friday in 1994
  611.      000007mo3 Every third Monday~in July every year less 1980%e1979
  612.      0000@e-10 Easter Sunday-10 days every year
  613.      0@e-10 Easter Sunday-10 days every year
  614.      00000000@e+10 Easter Sunday+10 days every year
  615.      a=1127
  616.      0@a+20 20 days after date of date variable `a'
  617.      a=*W10FR
  618.      0@a-1 The Thursday of the 10'th ISO-week every year
  619.      0@a   The Friday of the 10'th ISO-week every year
  620.      0@a1  The Saturday of the 10'th ISO-week every year
  621.      1995*d10    The 10'th absolute day in 1995
  622.      1995*d99tue The last Tuesday in 1995
  623.      0*w99su The Sunday of the last ISO-week every year
  624. File: gcal-us.info,  Node: Todays calendar,  Next: Meta Symbols,  Prev: Fixed date warnings,  Up: Top
  625. Genesis of the Gregorian calendar
  626. *********************************
  627.   The calendar that we use today was first formulated in several
  628. inaccurate variations by the Romans.  During Julius Caesar's reign,
  629. January was falling in autumn so he ordered Sosigenes to make changes
  630. to the calendar.  He added 90 days to the year 46 B.C. to make up for
  631. the seasonal drift and adjusted the lengths of the months as we know
  632. them to be today.  He introduced the leap year by adding one day to
  633. February every four years.  The use of the leap year was an improvement
  634. but not entirely accurate.  The true solar year is 365 days, 5 hours,
  635. 48 minutes, and 46 seconds.  One 366-day year every four years equates
  636. to an average year of 365 days, 6 hours.  Every four years, an error of
  637. 44 minutes, 56 seconds was accumulated.  This calendar is well known
  638. under the term "Julian" Calendar.
  639.   By the 16'nth century, the vernal equinox occurred around March 11,
  640. rather than March 21, so Pope Gregory XIII introduced the new style
  641. calendar in 1582.  Thursday, October 4, 1582 was followed by Friday,
  642. October 15.  Incidentally, the "Gregorian reform" compensates by 72
  643. hours (3 days) every 400 years.  The actual excess accumulated is 74
  644. hours, 53 minutes and 20 seconds.  The error of 2 hours, 53 minutes and
  645. 20 seconds every 400 years accumulates to one day in 3323 years.  Oh
  646. well, nobody is perfect.
  647.   Catholic countries adopted the Gregorian calendar almost immediately.
  648. Most Protestant countries on the Continent adopted the new calendar
  649. around 1700.  England and the American colonies changed in 1752, by act
  650. of Parliament.  Orthodox Christian countries adopted the Gregorian
  651. calendar later.  Russia was the last European country to do so, after
  652. the communist revolution of 1917.  As a result, the USSR celebrates the
  653. October Revolution (happened on October 25, 1917) in the old style
  654. calendar on November 7'th.
  655.   In the English program version, Gcal assumes the Gregorian
  656. Reformation have occurred in 1752 on the 3'rd of September.
  657. File: gcal-us.info,  Node: Meta Symbols,  Next: Coding scheme,  Prev: Todays calendar,  Up: Top
  658. Meta Symbols
  659. ************
  660.   Within this document the following *metasyntactic* conventions will
  661. be used when discussing command line options and arguments:
  662.      Argument is not optional and N must be a valid number.
  663. `e|DVAR'
  664.      Argument is not optional and must be a single alphabetic character.
  665. `[TEXT]'
  666.      Argument is optional and TEXT is a valid alphanumeric character
  667.      constant.
  668. `[AB]'
  669.      Arguments are optional, any number may be used in any order, e.g.:
  670.           NOTHING, A, B, AB, BA ...
  671. `{AB}'
  672.      Arguments are not optional, minimum one up to any number may be
  673.      used in any order, e.g.:
  674.           A, B, AB, BA ...
  675. `[A|B]'
  676.      Arguments are optional, select either A or B, but not both.
  677. `A|B'
  678.      Arguments are not optional, select either A or B, but not both.
  679. `[A[B]]'
  680.      Arguments are optional, select either A or AB, but not B.
  681. `[A|B[C]]'
  682.      Arguments are optional, select A or B or AC or BC, but not C.
  683. `[A|BC]'
  684.      Arguments are optional, select either AC or BC, but not A or B or
  685.      C.
  686. `[A]|[B]'
  687.      Argument *lists* are optional, select either list A or list B, but
  688.      not both.
  689. `[...]'
  690.      Additional arguments/files may be specified and are optional.
  691. File: gcal-us.info,  Node: Coding scheme,  Next: Environment variables,  Prev: Meta Symbols,  Up: Top
  692. Coding scheme
  693. *************
  694.   The following coding scheme tables explain the relations between the
  695. *date part* (YYYY...) of a resource file line and the modifiers, the
  696. short-style option `-c|C[]', which is used for the fixed date warnings
  697. respectively the long-style option `--period-of-fixed-dates=ARG' may
  698. have, i.e. they point out all possible correspondences.  This is
  699. necessary because Gcal does not respect all entries found in a resource
  700. file if a *fixed date warning* argument is given, it respects only
  701. those entries which have a definite relation to the *fixed date
  702. warning* argument!
  703. In *date part* `YYYY...':
  704.      means any year number (0001...9999).
  705.      means any month number (01...12 or 99) respectively and textual
  706.      short month name with lenght of 3 characters (Jan, Feb...).
  707.      means any day number (01...28, 29, 30, 31 or 99).
  708.      means any textual short weekday name with lenght of 2...3
  709.      characters (Mon...Sun).
  710.      means any single alphabetic character.
  711.      means any number (one or more digits).
  712. * Menu:
  713. * Coding scheme table 1::
  714. * Coding scheme table 2::
  715. File: gcal-us.info,  Node: Coding scheme table 1,  Next: Coding scheme table 2,  Prev: Coding scheme,  Up: Coding scheme
  716. Coding scheme table 1
  717. =====================
  718.   This table opposes all possible encode variations of a date given in
  719. the *date part* of resource file with all fitting modifiers of the
  720. short-style option `-c|C[]'.
  721.      *Please note:*
  722.      The `-c', `-ct', `-cNd', `-c*d|wN[WWW]', `-c@e|DVAR[[+|-]N[WWW]]',
  723.      `-cMMDD' and `-cMMWWWN' options respect *all* encode variations of
  724.      the *date part*!
  725. `*Date part of resource file*'
  726.      `*Short-style option -c|C[]*'
  727. `00000000'
  728.      `-cN+|-'
  729. `000000DD'
  730.      `-cNw|+|-', `-cw[+|-]', `-cm[+|-]'
  731. `0000MM00'
  732.      `-cN+|-'
  733. `0000MMDD'
  734.      `-cNw|+|-', `-cw[+|-]', `-cm[+|-]', `-cy[+|-]', `-clNd|w|+|-',
  735.      `-cl*d|wN[WWW]',
  736.      `-cl@e|DVAR[[+|-]N[WWW]]', `-clMMDD', `-clMMWWWN'
  737. `YYYY0000'
  738.      `-cN+|-'
  739. `YYYY00DD'
  740.      `-cNw|+|-', `-cw[+|-]', `-cm[+|-]'
  741. `YYYYMM00'
  742.      `-cN+|-'
  743. `YYYYMMDD'
  744.      `-cNw|+|-', `-cw[+|-]', `-cm[+|-]', `-cy[+|-]', `-clNd|w|+|-',
  745.      `-cl*d|wN[WWW]',
  746.      `-cl@e|DVAR[[+|-]N[WWW]]', `-clMMDD', `-clMMWWWN'
  747. `000000WWW'
  748.      `-cNw|+|-', `-cw[+|-]'
  749. `0000MMWWW'
  750.      `-cNw|+|-', `-cw[+|-]'
  751. `YYYY00WWW'
  752.      `-cNw|+|-', `-cw[+|-]'
  753. `YYYYMMWWW'
  754.      `-cNw|+|-', `-cw[+|-]'
  755. `000000WWWN'
  756.      `-cNw|+|-', `-cw[+|-]', `-cm[+|-]'
  757. `0000MMWWWN'
  758.      `-cNw|+|-', `-cw[+|-]', `-cm[+|-]', `-cy[+|-]', `-clNd|w|+|-',
  759.      `-cl*d|wN[WWW]',
  760.      `-cl@e|DVAR[[+|-]N[WWW]]', `-clMMDD', `-clMMWWWN'
  761. `YYYY00WWWN'
  762.      `-cNw|+|-', `-cw[+|-]', `-cm[+|-]'
  763. `YYYYMMWWWN'
  764.      `-cNw|+|-', `-cw[+|-]', `-cm[+|-]', `-cy[+|-]', `-clNd|w|+|-',
  765.      `-cl*d|wN[WWW]',
  766.      `-cl@e|DVAR[[+|-]N[WWW]]', `-clMMDD', `-clMMWWWN'
  767. `0000*dN[WWW]'
  768.      `-cNw|+|-', `-cw[+|-]', `-cm[+|-]', `-cy[+|-]', `-clNd|w|+|-',
  769.      `-cl*d|wN[WWW]',
  770.      `-cl@e|DVAR[[+|-]N[WWW]]', `-clMMDD', `-clMMWWWN'
  771. `YYYY*dN[WWW]'
  772.      `-cNw|+|-', `-cw[+|-]', `-cm[+|-]', `-cy[+|-]', `-clNd|w|+|-',
  773.      `-cl*d|wN[WWW]',
  774.      `-cl@e|DVAR[[+|-]N[WWW]]', `-clMMDD', `-clMMWWWN'
  775. `0000*wN[WWW]'
  776.      `-cNw|+|-', `-cw[+|-]', `-cm[+|-]', `-cy[+|-]', `-clNd|w|+|-',
  777.      `-cl*d|wN[WWW]',
  778.      `-cl@e|DVAR[[+|-]N[WWW]]', `-clMMDD', `-clMMWWWN'
  779. `YYYY*wN[WWW]'
  780.      `-cNw|+|-', `-cw[+|-]', `-cm[+|-]', `-cy[+|-]', `-clNd|w|+|-',
  781.      `-cl*d|wN[WWW]',
  782.      `-cl@e|DVAR[[+|-]N[WWW]]', `-clMMDD', `-clMMWWWN'
  783. `0000@?[+|-]N[WWW]'
  784.      `-cNw|+|-', `-cw[+|-]', `-cm[+|-]', `-cy[+|-]', `-clNd|w|+|-',
  785.      `-cl*d|wN[WWW]',
  786.      `-cl@e|DVAR[[+|-]N[WWW]]', `-clMMDD', `-clMMWWWN'
  787. `YYYY@?[+|-]N[WWW]'
  788.      `-cNw|+|-', `-cw[+|-]', `-cm[+|-]', `-cy[+|-]', `-clNd|w|+|-',
  789.      `-cl*d|wN[WWW]',
  790.      `-cl@e|DVAR[[+|-]N[WWW]]', `-clMMDD', `-clMMWWWN'
  791. File: gcal-us.info,  Node: Coding scheme table 2,  Prev: Coding scheme table 1,  Up: Coding scheme
  792. Coding scheme table 2
  793. =====================
  794.   This table opposes all possible encode variations of the short-style
  795. option `-c|C[]' with all fitting modifiers of a date given in the *date
  796. part* of resource file.
  797. `*Short-style option -c|C[]*'
  798.      `*Date part of resource file*'
  799. `-ct'
  800. `-cNd|+|-'
  801. `-cMMDD'
  802. `-cMMWWWN'
  803. `-c*d|wN[WWW]'
  804. `-c@e|DVAR[[+|-]N[WWW]]'
  805.      `00000000', `0000MM00', `YYYY0000', `YYYYMM00', `000000DD',
  806.      `0000MMDD', `YYYY00DD', `YYYYMMDD', `000000WWW', `0000MMWWW',
  807.      `YYYY00WWW', `YYYYMMWWW', `000000WWWN', `0000MMWWWN', `YYYY00WWWN',
  808.      `YYYYMMWWWN', `0000*dN', `0000*dNWWW', `YYYY*dN', `YYYY*dNWWW',
  809.      `0000*wN', `0000*wNWWW', `YYYY*wN', `YYYY*wNWWW', `0000@?[+|-]N',
  810.      `0000@?[+|-]NWWW', `YYYY@?[+|-]N', `YYYY@?[+|-]NWWW'
  811. `-cw[+|-]'
  812. `-cNw'
  813.      `000000DD', `0000MMDD', `YYYY00DD', `YYYYMMDD', `000000WWW',
  814.      `0000MMWWW', `YYYY00WWW', `YYYYMMWWW', `000000WWWN', `0000MMWWWN',
  815.      `YYYY00WWWN', `YYYYMMWWWN', `0000*dN', `0000*dNWWW', `YYYY*dN',
  816.      `YYYY*dNWWW', `0000*wN', `0000*wNWWW', `YYYY*wN', `YYYY*wNWWW',
  817.      `0000@?[+|-]N', `0000@?[+|-]NWWW', `YYYY@?[+|-]N',
  818.      `YYYY@?[+|-]NWWW'
  819. `-cm[+|-]'
  820.      `000000DD', `0000MMDD', `YYYY00DD', `YYYYMMDD', `000000WWWN',
  821.      `0000MMWWWN', `YYYY00WWWN', `YYYYMMWWWN', `0000*dN', `0000*dNWWW',
  822.      `YYYY*dN', `YYYY*dNWWW', `0000*wN', `0000*wNWWW', `YYYY*wN',
  823.      `YYYY*wNWWW', `0000@?[+|-]N', `0000@?[+|-]NWWW', `YYYY@?[+|-]N',
  824.      `YYYY@?[+|-]NWWW'
  825. `-cy[+|-]'
  826. `-clNd|w|+|-'
  827. `-clMMDD'
  828. `-clMMWWWN'
  829. `-cl*d|wN[WWW]'
  830. `-cl@e|DVAR[[+|-]N[WWW]]'
  831.      `0000MMDD', `YYYYMMDD', `0000MMWWWN', `YYYYMMWWWN', `0000*dN',
  832.      `0000*dNWWW', `YYYY*dN', `YYYY*dNWWW', `0000*wN', `0000*wNWWW',
  833.      `YYYY*wN', `YYYY*wNWWW', `0000@?[+|-]N', `0000@?[+|-]NWWW',
  834.      `YYYY@?[+|-]N', `YYYY@?[+|-]NWWW'
  835. File: gcal-us.info,  Node: Environment variables,  Next: Error codes,  Prev: Coding scheme,  Up: Top
  836. Environment variables
  837. *********************
  838.   Here is a list of all environment variables which are used by Gcal:
  839. `COLUMNS'
  840.      Sets the number of columns on the screen.  Takes precedence over
  841.      the number of columns specified by the `TERM' environment variable
  842.      or the system itself.
  843. `HOME'
  844.      Name of the users home directory (used to find the `.gcalrc' file).
  845.      Takes precedence over `GCALPATH', `GCAL_USR_LIBDIR' and
  846.      `GCAL_SYS_LIBDIR'.
  847. `GCAL'
  848.      Flags which are passed to Gcal automatically.
  849. `GCALANSI'
  850.      If defined or set, ANSI escape highlighting sequences are used
  851.      respectively substituted by default if no other highlighting
  852.      sequences are defined by command line option or found in the
  853.      Termcap library.
  854. `GCALPATH'
  855.      (`:') colon-separated list of directories which are searched to
  856.      find the `.gcalrc' file.  Takes precedence over `GCAL_USR_LIBDIR'
  857.      and `GCAL_SYS_LIBDIR'.
  858. `GCAL_USR_LIBDIR'
  859.      Name of a directory relative to `HOME' directory, where user stores
  860.      personal respectively *private access* resource files (dates
  861.      files).  Takes precedence over `GCAL_SYS_LIBDIR'.
  862. `GCAL_SYS_LIBDIR'
  863.      Name of a directory absolute *root*/*$(prefix)* directory, where
  864.      the system-administrator stores common respectively *public access*
  865.      resource files (dates files).
  866. `LINES'
  867.      Sets the number of lines on the screen.  Takes precedence over the
  868.      number of lines specified by the `TERM' environment variable or
  869.      the system itself.
  870. `PAGER'
  871.      Name of the *external* pager program, which is used if the paging
  872.      option `-p' respectively `--pager' is wanted.
  873. `PATH'
  874.      (`:') colon-separated list of directories which are searched to
  875.      find the *external pager* program.  *Note `--pager': Global
  876.      options, for more details.
  877. `TERM'
  878.      The type of terminal on which Gcal is being run.
  879. File: gcal-us.info,  Node: Error codes,  Next: Argument Index,  Prev: Environment variables,  Up: Top
  880. Error codes
  881. ***********
  882.   Gcal produces the following *exit* codes:
  883. `127'
  884.      Request for help screen, software license or program version
  885.      (adjustable).
  886. `126'
  887.      Invalid command line argument / option.
  888. `125'
  889.      Year out of range for computing Easter Sunday's date.
  890. `124'
  891.      Virtual memory exhausted.
  892. `123'
  893.      Invalid date part in resource file.
  894. `122'
  895.      Invalid month field entry in resource file.
  896. `121'
  897.      Invalid day field entry in resource file.
  898. `120'
  899.      Malformed *#include* statement in resource file.
  900. `119'
  901.      Illegal sub-*#include* statement in resource file.
  902. `118'
  903.      Resource file respectively include file not found.
  904. `117'
  905.      Invalid N'th weekday field (only 1...5 or 9 valid).
  906. `116'
  907.      Missing *whitespace* character between *date part* and *text part*.
  908. `115'
  909.      Response file respectively shell script can't be written.
  910. `114'
  911.      Invalid date variable operation.
  912. `113'
  913.      Referenced date variable undefined.
  914. `112'
  915.      Invalid date value assigned to date variable.
  916. `111'
  917.      Sending output to Email address fails.
  918. `110'
  919.      Internal error, C Function pipe(), fork() or execlp() fails.
  920. `109'
  921.      Error reading resource respectively response file.
  922.      Activated `-c|C[]' or `-f|F NAME[+...]' option causes no output of
  923.      resource file entries.
  924.      Normal program termination.
  925.